import { IMessageBase } from "../../Framework/MQ/IMessageBase";
import { MessageManager } from "../../Framework/MQ/MessageManager";
import { SerializeStream } from "../../Framework/Serialize/SerializeStream";
type int = number;
//class SRaceRoomInfo
    
    export  class SRaceRoomInfo extends IMessageBase
    {
        constructor(arg1: Boolean=false)
        {
            
            super();if (arg1) 
            {
                MessageManager.instance().regist(this);
            }
            return;
        }

        public /* override */ getType(): int
        {
            return this._type;
        }

        public /* override */ clone(): IMessageBase
        {
            return new SRaceRoomInfo();
        }

        public /* override */ __write(arg1: SerializeStream): void
        {
            arg1.writeInt(this.roomId);
            arg1.writeBool(this.isStart);
            arg1.writeInt(this.playerNum);
            arg1.writeInt(this.maxPlayerNum);
            arg1.writeInt(this.startMinPlayerNum);
            arg1.writeDate(this.predictDt);
            return;
        }

        public /* override */ __read(arg1: SerializeStream): void
        {
            this.roomId = arg1.readInt();
            this.isStart = arg1.readBool();
            this.playerNum = arg1.readInt();
            this.maxPlayerNum = arg1.readInt();
            this.startMinPlayerNum = arg1.readInt();
            this.predictDt = arg1.readDate();
            return;
        }

        public /* const */_type: int=497;

        public /* var */roomId: int;

        public /* var */isStart: Boolean;

        public /* var */playerNum: int;

        public /* var */maxPlayerNum: int;

        public /* var */startMinPlayerNum: int;

        public /* var */predictDt: Date;

        public static /* var */_regist: SRaceRoomInfo;
    }

            SRaceRoomInfo._regist = new SRaceRoomInfo(true);
        